#import <Foundation/Foundation.h>
#import <LayerKit/LayerKit.h>
#import <UIKit/UIAlertSheet.h>
#import <UIKit/UIKit.h>
#import <UIKit/UIView-Geometry.h>
#import <UIKit/UIImageAndTextTableCell.h>
#import <UIKit/UIApplication.h>
#import <UIKit/UIWindow.h>
#import <UIKit/UIView.h>
#import <UIKit/UIView-Hierarchy.h>
#import <UIKit/UIView-UIImageViewImplementation.h>
#import <UIKit/UIButtonBar.h>
#import <UIKit/UINavigationBar.h>
#import <UIKit/UINavBarButton.h>
#import <UIKit/UINavigationBarBackground.h>
#import <UIKit/UINavigationItem.h>
#import <UIKit/UIPreferencesTable.h>
#import <UIKit/UIPreferencesTableCell.h>
#import <UIKit/UITable.h>
#import <UIKit/UITableCell.h>
#import <UIKit/UITableColumn.h>
#import <UIKit/UISegmentedControl.h>
#import <UIKit/UIPreferencesTextTableCell.h>
#import <UIKit/UIPreferencesControlTableCell.h>
#import <UIKit/UIPreferencesDeleteTableCell.h>
#import <UIKit/UISwitchControl.h>
#import <UIKit/UITransformAnimation.h>
#import <UIKit/UIKeyboard.h>
#import <UIKit/UIAnimator.h>
#import <UIKit/UIPushButton.h>
#import <UIKit/CDStructures.h>
#import <UIKit/UITextField.h>
#import <UIKit/UITransitionView.h>
#import <CoreGraphics/CoreGraphics.h>
#import <GraphicsServices/GraphicsServices.h>
#import <WebCore/WebFontCache.h>
#import "ChordsApplication.h"
#import "ScalesString.h"
#import "NotesString.h"

@class ChordsApplication;
@class ScalesString;
@class NotesString;

@interface ScalesView : UIView
{
	UIView *mainView;
	ChordsApplication *app;
	ScalesString *currentScale;
	NotesString *notesString;
	NSArray *chord;
	NSArray *mode;
	NSArray *modes;
	NSArray *scaleName;
	NSArray *position;
	NSMutableArray *chordButtons;
	NSMutableArray *modeButtons;
	NSMutableArray *dotImages;
	NSMutableArray *fretText;
	NSArray *chordPositions;
	NSString *scalesFormula;
	
	NSDictionary *notationDict;
	NSString *notation;
	
	UIScroller	*v3;
	UIImageView *imgBackground;
	UIImageView *strings;
	
	UIImage *btnImageChord;
	UIImage *btnImageScale;
	UIImage *btnImageScaleMode;
	UIImage *buttonImagePressed;
	UIImage *btnImageSelected;
	UIImage *btnImageScalePressed;

	UIImage *btnImageStroke;
	UIImage *btnImageNoStroke;
	
	UIImage *btnImagePrev;
	UIImage *btnImageNext;
	UIImage *btnImagePrevPressed;
	UIImage *btnImageNextPressed;
	UIImage *btnImageRecPressed;
	
	UIImage *btnImagePlay;
	UIImage *btnImagePlayPressed;
	
	UIPushButton  *label;

	UIPushButton *prev;
	UIPushButton *next;
	
	UIPushButton *play;

	int selectedChord;
	int selectedMode;
	int selectedPosition;
	int selectedScale;

	int min;
	
	struct __GSFont *smallFont;
	struct __GSFont *mediumFont;
	struct __GSFont *bigFont;
	
}

- (id)initWithFrame:(struct CGRect)frame;
- (void)drawScale;
- (void)drawDots:(NSString *)position;
- (void)changeNotation;
- (int)getSelectedChord;
- (int)getSelectedMode;
- (int)getSelectedPosition;
- (NSString*)getSelectedNotation;

// DELEGATE METHODS
- (void)chordButtonsPressed:(UIPushButton *)button;
- (void)modeButtonsPressed:(UIPushButton *)button;
- (void)prevButtonPressed:(UIPushButton *)button;
- (void)nextButtonPressed:(UIPushButton *)button;
- (void)playButtonPressed:(UIPushButton *)button;

@end
